SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 53552: SAS® Real-Time Decision Manager might incorrectly return "DS2 data type XXXX is not supported for use in a DS2 Activity method"

DetailsAboutRate It

When you enter DS2 code into SAS® Customer Intelligence Studio, you can enter more than one package per SAS activity. However, only the last package is associated with the SAS Real-Time Decision Manager activity that you create. The other packages are compiled, but their methods are not checked for the use of variable types that are not allowed in activity signatures. The intended functionality is that you can use the disallowed variable types, such as HASH, in these other packages.

In some releases of SAS Real-Time Decision Manager, all of the packages in your activity code are checked despite this intended functionality. The example below uses a variable of type HASH in the method signature for the first package, but the last package includes only allowed variable types:

package TypesTest_util /overwrite=yes;
   method foo(package hash h);
      h.clear();
   end;
   method do(varchar(50) s, in_out int i);
      i = 0;
   end;
endpackage;
run;

package TypesTest /overwrite=yes;
   declare package TypesTest_util util();

  method execute(varchar(50) s, in_out int i);
      util.do(s, i);
   end;
endpackage;
run;

When you run this code, you get an error similar to the one below:

2013-11-11 17:28:27,331 ERROR a1a8761d15cd81f3:-69151c9a:142469a1b3a:2bcb
SASDSDesignRepository
com.sas.rtdm.designserver.implementation.DesignServerWebserviceFactory -
Converting SAS Decision Services design server exception to fault.
com.sas.analytics.ph.RTDMException: DS2 data type PACKAGE hash is not supported
for use in a DS2 Activity method.
at
com.sas.analytics.ph.common.exp.DS2.DS2ActivityReader.mapDataType(DS2ActivityRea
der.java:129)
at
com.sas.analytics.ph.common.exp.DS2.DS2ActivityReader.readParameter(DS2ActivityR
eader.java:73)
at
com.sas.analytics.ph.common.exp.DS2.DS2ActivityReader.readMethod(DS2ActivityRead
er.java:44)
at
com.sas.analytics.ph.common.exp.DS2.DS2ActivityReader.read(DS2ActivityReader.jav
a:30)
at
com.sas.rtdm.implementation.activity.sasactivity.SASActivityGenerator.generateAc
tivity(SASActivityGenerator.java:24)
at
com.sas.rtdm.designserver.implementation.DesignServerInternalImpl.generateActivi
tyFromDS2(DesignServerInternalImpl.java:818)
at
com.sas.rtdm.designserver.implementation.TranslatingDesignServerImpl.generateAct
ivityFromDS2(TranslatingDesignServerImpl.java:383)

In order to work around this problem, create your DS2 utility packages outside of SAS Real-Time Decision Manager.

Operating System and Release Information

Product FamilyProductSystemProduct ReleaseSAS Release
ReportedFixed*ReportedFixed*
SAS SystemSAS Real-Time Decision ManagerMicrosoft Windows Server 2003 Standard Edition6.16.39.2 TS2M0
Microsoft Windows Server 2003 Enterprise Edition6.16.39.2 TS2M0
Microsoft Windows Server 2003 Datacenter Edition6.16.39.2 TS2M0
Microsoft® Windows® for x646.16.39.2 TS2M0
Linux for x646.16.39.2 TS2M0
HP-UX IPF6.16.39.2 TS2M0
64-bit Enabled Solaris6.16.39.2 TS2M0
64-bit Enabled AIX6.16.39.2 TS2M0
Windows Vista for x646.16.39.2 TS2M0
Windows Vista6.16.39.2 TS2M0
Microsoft Windows XP Professional6.16.39.2 TS2M0
Microsoft Windows Server 2008 for x646.16.39.2 TS2M0
Microsoft Windows Server 2008 R26.16.39.2 TS2M0
Microsoft Windows Server 2003 for x646.16.39.2 TS2M0
Solaris for x646.16.39.2 TS2M0
SAS SystemSAS Decision ServicesMicrosoft® Windows® for x645.66.49.4 TS1M0
64-bit Enabled AIX5.66.49.4 TS1M0
64-bit Enabled Solaris5.66.49.4 TS1M0
HP-UX IPF5.66.49.4 TS1M0
Linux for x645.66.49.4 TS1M0
Solaris for x645.66.49.4 TS1M0
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.